.class Lcom/burstly/lib/util/json/JacksonProcessor;
.super Ljava/lang/Object;
.source "JacksonProcessor.java"

# interfaces
.implements Lcom/burstly/lib/util/json/IJsonProcessor;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/burstly/lib/util/json/JacksonProcessor$CookieSerializer;
    }
.end annotation


# static fields
.field private static final JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper; = null

.field private static final LOG:Lcom/burstly/lib/util/LoggerExt; = null

.field private static final TAG:Ljava/lang/String; = "Jackson Processor"


# direct methods
.method static constructor <clinit>()V
    .locals 6

    .prologue
    const/4 v5, 0x0

    const/4 v4, 0x0

    .line 55
    invoke-static {}, Lcom/burstly/lib/util/LoggerExt;->getInstance()Lcom/burstly/lib/util/LoggerExt;

    move-result-object v1

    sput-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    .line 60
    new-instance v1, Lcom/burstly/jackson/map/ObjectMapper;

    invoke-direct {v1}, Lcom/burstly/jackson/map/ObjectMapper;-><init>()V

    sput-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    .line 97
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    invoke-static {v1}, Lcom/burstly/lib/util/json/JacksonProcessor;->configureMapper(Lcom/burstly/jackson/map/ObjectMapper;)V

    .line 98
    new-instance v0, Lcom/burstly/jackson/map/module/SimpleModule;

    const-string v1, "SimpleModule"

    new-instance v2, Lcom/burstly/jackson/Version;

    const/4 v3, 0x1

    invoke-direct {v2, v3, v4, v4, v5}, Lcom/burstly/jackson/Version;-><init>(IIILjava/lang/String;)V

    invoke-direct {v0, v1, v2}, Lcom/burstly/jackson/map/module/SimpleModule;-><init>(Ljava/lang/String;Lcom/burstly/jackson/Version;)V

    .line 99
    .local v0, simpleModule:Lcom/burstly/jackson/map/module/SimpleModule;
    new-instance v1, Lcom/burstly/lib/util/json/JacksonProcessor$CookieSerializer;

    invoke-direct {v1, v5}, Lcom/burstly/lib/util/json/JacksonProcessor$CookieSerializer;-><init>(Lcom/burstly/lib/util/json/JacksonProcessor$1;)V

    invoke-virtual {v0, v1}, Lcom/burstly/jackson/map/module/SimpleModule;->addSerializer(Lcom/burstly/jackson/map/JsonSerializer;)Lcom/burstly/jackson/map/module/SimpleModule;

    .line 100
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    invoke-virtual {v1, v0}, Lcom/burstly/jackson/map/ObjectMapper;->registerModule(Lcom/burstly/jackson/map/Module;)V

    .line 101
    return-void
.end method

.method constructor <init>()V
    .locals 0

    .prologue
    .line 45
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 68
    return-void
.end method

.method private static configureMapper(Lcom/burstly/jackson/map/ObjectMapper;)V
    .locals 2
    .parameter "mapper"

    .prologue
    .line 111
    sget-object v0, Lcom/burstly/jackson/annotate/JsonMethod;->FIELD:Lcom/burstly/jackson/annotate/JsonMethod;

    sget-object v1, Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;->ANY:Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;

    invoke-virtual {p0, v0, v1}, Lcom/burstly/jackson/map/ObjectMapper;->setVisibility(Lcom/burstly/jackson/annotate/JsonMethod;Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;)Lcom/burstly/jackson/map/ObjectMapper;

    .line 112
    sget-object v0, Lcom/burstly/jackson/annotate/JsonMethod;->CREATOR:Lcom/burstly/jackson/annotate/JsonMethod;

    sget-object v1, Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;->ANY:Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;

    invoke-virtual {p0, v0, v1}, Lcom/burstly/jackson/map/ObjectMapper;->setVisibility(Lcom/burstly/jackson/annotate/JsonMethod;Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;)Lcom/burstly/jackson/map/ObjectMapper;

    .line 114
    sget-object v0, Lcom/burstly/jackson/annotate/JsonMethod;->GETTER:Lcom/burstly/jackson/annotate/JsonMethod;

    sget-object v1, Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;->NONE:Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;

    invoke-virtual {p0, v0, v1}, Lcom/burstly/jackson/map/ObjectMapper;->setVisibility(Lcom/burstly/jackson/annotate/JsonMethod;Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;)Lcom/burstly/jackson/map/ObjectMapper;

    .line 115
    sget-object v0, Lcom/burstly/jackson/annotate/JsonMethod;->SETTER:Lcom/burstly/jackson/annotate/JsonMethod;

    sget-object v1, Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;->NONE:Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;

    invoke-virtual {p0, v0, v1}, Lcom/burstly/jackson/map/ObjectMapper;->setVisibility(Lcom/burstly/jackson/annotate/JsonMethod;Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;)Lcom/burstly/jackson/map/ObjectMapper;

    .line 116
    sget-object v0, Lcom/burstly/jackson/annotate/JsonMethod;->IS_GETTER:Lcom/burstly/jackson/annotate/JsonMethod;

    sget-object v1, Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;->NONE:Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;

    invoke-virtual {p0, v0, v1}, Lcom/burstly/jackson/map/ObjectMapper;->setVisibility(Lcom/burstly/jackson/annotate/JsonMethod;Lcom/burstly/jackson/annotate/JsonAutoDetect$Visibility;)Lcom/burstly/jackson/map/ObjectMapper;

    .line 117
    sget-object v0, Lcom/burstly/jackson/map/annotate/JsonSerialize$Inclusion;->NON_NULL:Lcom/burstly/jackson/map/annotate/JsonSerialize$Inclusion;

    invoke-virtual {p0, v0}, Lcom/burstly/jackson/map/ObjectMapper;->setSerializationInclusion(Lcom/burstly/jackson/map/annotate/JsonSerialize$Inclusion;)Lcom/burstly/jackson/map/ObjectMapper;

    .line 119
    sget-object v0, Lcom/burstly/jackson/map/DeserializationConfig$Feature;->FAIL_ON_UNKNOWN_PROPERTIES:Lcom/burstly/jackson/map/DeserializationConfig$Feature;

    const/4 v1, 0x0

    invoke-virtual {p0, v0, v1}, Lcom/burstly/jackson/map/ObjectMapper;->configure(Lcom/burstly/jackson/map/DeserializationConfig$Feature;Z)Lcom/burstly/jackson/map/ObjectMapper;

    .line 120
    return-void
.end method


# virtual methods
.method public fromJson(Ljava/lang/String;)Lcom/burstly/lib/network/ResponseObject;
    .locals 9
    .parameter "jsonString"

    .prologue
    const/4 v8, 0x1

    const/4 v7, 0x0

    .line 146
    :try_start_0
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    invoke-static {}, Lcom/burstly/jackson/map/type/TypeFactory;->defaultInstance()Lcom/burstly/jackson/map/type/TypeFactory;

    move-result-object v3

    const-class v4, Ljava/util/HashMap;

    const-class v5, Ljava/lang/String;

    const-class v6, Ljava/lang/Object;

    invoke-virtual {v3, v4, v5, v6}, Lcom/burstly/jackson/map/type/TypeFactory;->constructMapType(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)Lcom/burstly/jackson/map/type/MapType;

    move-result-object v3

    invoke-virtual {v2, p1, v3}, Lcom/burstly/jackson/map/ObjectMapper;->readValue(Ljava/lang/String;Lcom/burstly/jackson/type/JavaType;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/util/HashMap;

    .line 148
    .local v1, map:Ljava/util/HashMap;,"Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Object;>;"
    new-instance v2, Lcom/burstly/lib/network/ResponseObject;

    invoke-direct {v2, v1}, Lcom/burstly/lib/network/ResponseObject;-><init>(Ljava/util/Map;)V
    :try_end_0
    .catch Lcom/burstly/jackson/JsonParseException; {:try_start_0 .. :try_end_0} :catch_0
    .catch Lcom/burstly/jackson/map/JsonMappingException; {:try_start_0 .. :try_end_0} :catch_1
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2

    .line 163
    .end local v1           #map:Ljava/util/HashMap;,"Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Object;>;"
    :goto_0
    return-object v2

    .line 150
    :catch_0
    move-exception v0

    .line 151
    .local v0, e:Lcom/burstly/jackson/JsonParseException;
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v3, "Jackson Processor"

    const-string v4, "Error parsing server response! Response: {0} is not valid JSON string."

    new-array v5, v8, [Ljava/lang/Object;

    aput-object p1, v5, v7

    invoke-virtual {v2, v3, v4, v5}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 152
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v3, "Jackson Processor"

    invoke-virtual {v2, v3, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    .line 163
    .end local v0           #e:Lcom/burstly/jackson/JsonParseException;
    :goto_1
    const/4 v2, 0x0

    goto :goto_0

    .line 154
    :catch_1
    move-exception v0

    .line 155
    .local v0, e:Lcom/burstly/jackson/map/JsonMappingException;
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v3, "Jackson Processor"

    const-string v4, "Error mapping server response! Response: {0} is not valid JSON string."

    new-array v5, v8, [Ljava/lang/Object;

    aput-object p1, v5, v7

    invoke-virtual {v2, v3, v4, v5}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 156
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v3, "Jackson Processor"

    invoke-virtual {v2, v3, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1

    .line 158
    .end local v0           #e:Lcom/burstly/jackson/map/JsonMappingException;
    :catch_2
    move-exception v0

    .line 159
    .local v0, e:Ljava/io/IOException;
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v3, "Jackson Processor"

    const-string v4, "IO error during parsing server response! Response: {0} is not valid JSON string."

    new-array v5, v8, [Ljava/lang/Object;

    aput-object p1, v5, v7

    invoke-virtual {v2, v3, v4, v5}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 161
    sget-object v2, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v3, "Jackson Processor"

    invoke-virtual {v2, v3, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1
.end method

.method public fromJson(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
    .locals 6
    .parameter "jsonString"
    .parameter
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "<T:",
            "Ljava/lang/Object;",
            ">(",
            "Ljava/lang/String;",
            "Ljava/lang/Class",
            "<TT;>;)TT;"
        }
    .end annotation

    .prologue
    .local p2, targetClass:Ljava/lang/Class;,"Ljava/lang/Class<TT;>;"
    const/4 v4, 0x1

    const/4 v5, 0x0

    .line 125
    :try_start_0
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    invoke-virtual {v1, p1, p2}, Lcom/burstly/jackson/map/ObjectMapper;->readValue(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
    :try_end_0
    .catch Lcom/burstly/jackson/JsonParseException; {:try_start_0 .. :try_end_0} :catch_0
    .catch Lcom/burstly/jackson/map/JsonMappingException; {:try_start_0 .. :try_end_0} :catch_1
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2

    move-result-object v1

    .line 140
    :goto_0
    return-object v1

    .line 127
    :catch_0
    move-exception v0

    .line 128
    .local v0, e:Lcom/burstly/jackson/JsonParseException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "Error parsing a json string! The string: {0} is not a valid JSON string."

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v5

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 129
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    .line 140
    .end local v0           #e:Lcom/burstly/jackson/JsonParseException;
    :goto_1
    const/4 v1, 0x0

    goto :goto_0

    .line 131
    :catch_1
    move-exception v0

    .line 132
    .local v0, e:Lcom/burstly/jackson/map/JsonMappingException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "Error mapping a json string! The string: {0} is not a valid JSON string."

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v5

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 133
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1

    .line 135
    .end local v0           #e:Lcom/burstly/jackson/map/JsonMappingException;
    :catch_2
    move-exception v0

    .line 136
    .local v0, e:Ljava/io/IOException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "IO error during parsing a json string! The string: {0} is not a valid JSON string."

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v5

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 138
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1
.end method

.method public fromJsonToListOfStrings(Ljava/lang/String;)Ljava/util/List;
    .locals 6
    .parameter "jsonString"
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            ")",
            "Ljava/util/List",
            "<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation

    .prologue
    const/4 v4, 0x1

    const/4 v5, 0x0

    .line 169
    :try_start_0
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    new-instance v2, Lcom/burstly/lib/util/json/JacksonProcessor$1;

    invoke-direct {v2, p0}, Lcom/burstly/lib/util/json/JacksonProcessor$1;-><init>(Lcom/burstly/lib/util/json/JacksonProcessor;)V

    invoke-virtual {v1, p1, v2}, Lcom/burstly/jackson/map/ObjectMapper;->readValue(Ljava/lang/String;Lcom/burstly/jackson/type/TypeReference;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/util/List;
    :try_end_0
    .catch Lcom/burstly/jackson/JsonParseException; {:try_start_0 .. :try_end_0} :catch_0
    .catch Lcom/burstly/jackson/map/JsonMappingException; {:try_start_0 .. :try_end_0} :catch_1
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2

    .line 185
    :goto_0
    return-object v1

    .line 172
    :catch_0
    move-exception v0

    .line 173
    .local v0, e:Lcom/burstly/jackson/JsonParseException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "Error parsing json list of strings! Response: {0} is not valid JSON string."

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v5

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 174
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    .line 185
    .end local v0           #e:Lcom/burstly/jackson/JsonParseException;
    :goto_1
    const/4 v1, 0x0

    goto :goto_0

    .line 176
    :catch_1
    move-exception v0

    .line 177
    .local v0, e:Lcom/burstly/jackson/map/JsonMappingException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "Error mapping json list of strings! Response: {0} is not valid JSON string."

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v5

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 178
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1

    .line 180
    .end local v0           #e:Lcom/burstly/jackson/map/JsonMappingException;
    :catch_2
    move-exception v0

    .line 181
    .local v0, e:Ljava/io/IOException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "IO error during parsing json list of strings! Response: {0} is not valid JSON string."

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v5

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 183
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1
.end method

.method public toJson(Ljava/lang/Object;)Ljava/lang/String;
    .locals 7
    .parameter "object"

    .prologue
    const/4 v4, 0x1

    const/4 v6, 0x0

    .line 191
    :try_start_0
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->JACKSON_MAPPER:Lcom/burstly/jackson/map/ObjectMapper;

    invoke-virtual {v1, p1}, Lcom/burstly/jackson/map/ObjectMapper;->writeValueAsString(Ljava/lang/Object;)Ljava/lang/String;
    :try_end_0
    .catch Lcom/burstly/jackson/JsonGenerationException; {:try_start_0 .. :try_end_0} :catch_0
    .catch Lcom/burstly/jackson/map/JsonMappingException; {:try_start_0 .. :try_end_0} :catch_1
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2

    move-result-object v1

    .line 205
    :goto_0
    return-object v1

    .line 193
    :catch_0
    move-exception v0

    .line 194
    .local v0, e:Lcom/burstly/jackson/JsonGenerationException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "Error generating JSON string! Object: {0}"

    new-array v4, v4, [Ljava/lang/Object;

    invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v5

    aput-object v5, v4, v6

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 195
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    .line 205
    .end local v0           #e:Lcom/burstly/jackson/JsonGenerationException;
    :goto_1
    const/4 v1, 0x0

    goto :goto_0

    .line 197
    :catch_1
    move-exception v0

    .line 198
    .local v0, e:Lcom/burstly/jackson/map/JsonMappingException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "Error mapping JSON string! Object: {0}"

    new-array v4, v4, [Ljava/lang/Object;

    invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v5

    aput-object v5, v4, v6

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 199
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1

    .line 201
    .end local v0           #e:Lcom/burstly/jackson/map/JsonMappingException;
    :catch_2
    move-exception v0

    .line 202
    .local v0, e:Ljava/io/IOException;
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    const-string v3, "IO error during generating JSON string! Object: {0}"

    new-array v4, v4, [Ljava/lang/Object;

    invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v5

    aput-object v5, v4, v6

    invoke-virtual {v1, v2, v3, v4}, Lcom/burstly/lib/util/LoggerExt;->logError(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    .line 203
    sget-object v1, Lcom/burstly/lib/util/json/JacksonProcessor;->LOG:Lcom/burstly/lib/util/LoggerExt;

    const-string v2, "Jackson Processor"

    invoke-virtual {v1, v2, v0}, Lcom/burstly/lib/util/LoggerExt;->logThrowable(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_1
.end method
